package com.pan.admin.quartz.dao;

import com.pan.admin.module.crm.entity.CrmDistributeLoanUser;
import com.pan.admin.quartz.entity.DistributeUser;
import com.pan.admin.quartz.entity.LoanJfExecuteRecord;
import com.pan.admin.quartz.entity.vo.LoanProductVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Description: 用户分配调度
 * @Author: ghb
 * @Date: 2023/11/17 14:21
 */
@Mapper
public interface OrgDistributeDao {


    LoanJfExecuteRecord getDistributeRecord(Integer productId);

    /**
     * 查询所有的机构ID
     *
     * @return
     */
    List<LoanProductVO> listProductId();

    /**
     * 根据机构ID 查询所属的 子公司+客服
     *
     * @param productId
     * @return
     */
    List<DistributeUser> listUserId(Integer productId);

    /**
     * 根据机构ID查询所属分配用户ID
     */
    List<Integer> listDistributeLoanUserId(Integer productId);

    /**
     * 批量插入
     *
     * @param userList
     * @return
     */
    int batchInsert(List<CrmDistributeLoanUser> userList);

    /**
     * 新增执行记录
     */
    int insertDistributeRecord(LoanJfExecuteRecord loanJfExecuteRecord);

    /**
     * 更新执行记录
     *
     * @param loanJfExecuteRecord 甲方机构分配，执行记录
     * @return 结果
     */
    int updateDistributeRecord(LoanJfExecuteRecord loanJfExecuteRecord);

}
